#include <stdio.h>
#include "tree.h"
#include "symbol.h"
int run2Error;

int run2(BODY *root, SymbolTable *symboltable);
void run2DECL_LIST(DECL_LIST *decl_list, SymbolTable *symboltable);
void run2DECLARATION(DECLARATION *declaration, SymbolTable *symboltable);
void run2FUNC(FUNCTION *function, SymbolTable *symboltable);
void run2TYPE_ID(DECLARATION *declaration, SymbolTable *symboltable);
void run2CLEARTYPE(TYPE *type, SymbolTable *tmpTable, SymbolTable *symboltable, char *bool);
void run2CLEARVAR_DECL_LIST(VAR_DECL_LIST *var_decl_list, SymbolTable *tmpTable, SymbolTable *symboltable, char *bool);
void run2CLEARVAR_TYPE(VAR_TYPE *var_type, SymbolTable *tmpTable, SymbolTable *symboltable, char *bool);
/*
 * STATEMENT-LIST FROM NOW ON!
 */
void run2STATEMENT_LIST(STATEMENT_LIST *statement_list, SymbolTable *symboltable);
void run2STATEMENT(STATEMENT *statement, SymbolTable *symboltable);
TYPE *run2EXPRESSION(EXPRESSION *expression, SymbolTable *symboltable);
TYPE *run2TERM(TERM *term, SymbolTable *symboltable);
void run2EXP_LIST(EXP_LIST *exp_list, SymbolTable *symboltable);
TYPE *run2VARIABLE(VARIABLE *variable, SymbolTable *symboltable);
